草庐IT

php - 多对多,另一列

全部标签

PHP SimpleXML 缺少属性

这不是一个骗人的问题。其他人缺少print_r中的属性。但是我根本无法访问属性xlink:href。这是我尝试过的:$xml=simplexml_load_string($imageSVG);$image=$xml->g->image;//works$style=$xml->g->image->style;//works$style=$xml->g->image['style'];//works$remoteHref=$xml->g->image['xlink:href'];//doesn'twork$remoteHref=$xml->g->image['href'];//doesn'

php - 如何用php递归更新xml属性值?

我正在编写一个函数来将给定xml文件的所有属性值重置为空字符串。有人可以帮我修复此功能以执行请求的任务吗?谢谢!//resetallattributevaluestoNULLor""functionresetAttributes($xml){foreach($xml->children()as$child){foreach($child->attributes()as$attr){$attr="";}resetAttributes($child);}return$xml;}$xml=simplexml_load_file($xmlFile);resetAttributes($xml);

xml - xpath通过属性获取节点值等于另一个节点的值

我是XPath新手,我有以下xml:`greenredyellowpencil3pen1ruler2`如您所见,colorId值对应于颜色id属性,因此“铅笔”为“黄色”(3),“钢笔”为“绿色”(1),“尺子”为“红色”(2).问题是如何通过colorId值获取每个项目的值?提前致谢。 最佳答案 这将根据id返回title:/catalog/items/item[colorId=/catalog/colors/color/@id]/title这将返回对应于colorId的color:/catalog/colors/color[@i

php xpath 将节点值作为数组返回

我正在使用xpath获取cms页面的值,video?id=blahblah我的PHPXpath代码是xpath("//video[@id=$id]/title");我对所有值都这样做,下面是我的xml代码Test我想要标题标题说测试,但它说的是数组 最佳答案 XPath查询返回一系列结果节点,而不是单个结果节点。SimpleXML将其作为SimpleXMLElements数组返回(具有合理的__toString实现,因此您可以直接在字符串上下文中输出它们)。因此,如果您确定只会得到一个结果,只需选择数组的第一项:$title=$db

php - 使用 PHP 在 XML 子元素名称中包含冒号

我正在尝试让我的站点地图在添加页面时自动更新。我正在定义包含我需要的子名称的var,其中包括一个冒号字符。PHP或XML正在删除其右侧或左侧的冒号和单词。如何在子元素名称中保留该冒号?我正在使用这个:addChild('url');$map->addChild('loc',"http:/somewebsite".$page_path);$img=$map->addChild($imagechild);$img->addChild($imageloc,$img_link);$xml->saveXML('sitemap.xml');?>我明白了:weburlimageurl我需要这个web

php - 如何使用 PHP 更新 xml 文件?

我有这样的xml文件-->examples.xmlaniegood这是我的php文件-->index.phpformatOutput=true;$xml->preserveWhiteSpace=false;$xml->load('examples.xml');//GetitemElement$element=$xml->getElementsByTagName('person')->item(0);//Loadchildelements$name=$element->getElementsByTagName('name')->item(0);$comment=$element->get

xml - XSLT:使用另一个属性的值创建新属性

我正在将一个XML转换为另一个。假设我们开始的XML看起来像这样现在,在转换后的XML中,我想使用旧XML中的id属性值创建一个新属性。我试着这样做:我收到这个错误:cannotcreateanattributenodewhoseparentisadocumentnode有人可以向我解释我做错了什么,因为我不明白这个错误。有解决方案就好了。谢谢! 最佳答案 问题是文档节点不能有属性,并且您没有在输出树中创建要应用属性的元素。文档节点还必须有一个元素子元素。像下面这样的东西应该可以工作。

php - 使用 Curl 发布 xml 时获取权限被拒绝?

我必须将xml发布到url以供某些Web服务使用。我正在使用CentOS5.6Apache/2.2.3(CentOS)。当我使用curl-d@"abc.xml"http://example.com从命令行发布时,它给了我结果。但是当我使用curl从php发布时$ch=curl_init($url);curl_setopt($ch,CURLOPT_POST,1);curl_setopt($ch,CURLOPT_HTTPHEADER,array('Content-Type:text/xml'));curl_setopt($ch,CURLOPT_POSTFIELDS,"$xml");curl

xml - 对属性(按值)使用一个模板,对(父)节点使用另一个模板

我在大型(TEI风格)XML文件(约6000行)(在OSX上使用Saxon-HE9.5.1.6J)的大型(420行)XSL转换中收到此模糊匹配警告。我想了解(并修复)警告。RecoverableerrorXTRE0540:Ambiguousrulematchfor/TEI/text[1]/group[1]/text[1]/body[1]/lg[33]/head[2]Matchesboth"tei:lg[@type='poem']/tei:head"online103offile:hs2latex.xsland"*[@rend='italics']"online110offile:hs2

php - 在 php 中使用带有 xpath 的属性从 xml 中获取值

我想从这个xml中获取带有name="userID"的参数值'23452345235':234523452355767456756754745674566我正在使用这段代码:$xml=simplexml_load_string($data);$myDataObject=$xml->xpath('//parameter[@name="UserID"]');var_dump($myDataObject);我得到这个:array(1){[0]=>classSimpleXMLElement#174(1){public$@attributes=>array(1){'name'=>string(6